/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ec.com.farmaciassantamartha.comprobantes.portal.mb;

import ec.com.farmaciassantamartha.comprobantes.portal.bean.Usuario;
import ec.com.farmaciassantamartha.comprobantes.portal.sql.UsuarioSQL;
import java.io.Serializable;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

/**
 *
 * @author Maestria
 */
@ManagedBean
@SessionScoped
public class UsuarioMB implements Serializable {

    private long id;
    private String nombre;
    private String password;
    private String razonSocial;
    private String ruc;

    /** Creates a new instance of UsuarioMB */
    public UsuarioMB() {
    }

    public String getPassword() {
        return password;
    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getRazonSocial() {
        return razonSocial;
    }

    public void setRazonSocial(String razonSocial) {
        this.razonSocial = razonSocial;
    }

    public String getRuc() {
        return ruc;
    }

    public void setRuc(String ruc) {
        this.ruc = ruc;
    }

    public String autenticar() {
        FacesContext context = FacesContext.getCurrentInstance();
        if (nombre == null || nombre.isEmpty()) {
            context.addMessage(null, new FacesMessage("Nombre de usuario requerido."));
        }
        if (password == null || password.isEmpty()) {
            context.addMessage(null, new FacesMessage("Contraseña requerida."));
        }
        if (context.getMessageList().size() > 0) {
            return (null);
        } else {
            Usuario usuario = UsuarioSQL.obtener(nombre, password);
            if (usuario != null) {
                id = usuario.getId();
                razonSocial = usuario.getRazonSocial();
                ruc = usuario.getRuc();
                return ("comprobantes.xhtml?faces-redirect=true");
            } else {
                context.addMessage(null, new FacesMessage("Usuario incorrecto."));
                return (null);
            }
        }
    }

    public String cerrarSesion() {
        FacesContext.getCurrentInstance().getExternalContext().invalidateSession();
        return "/index.xhtml?faces-redirect=true";
    }
}
